package com.common.platform.base.exception;

public enum BizExceptionEnum implements AbstractBaseExceptionEnum {

    /**
     * 字典
     */

    DICT_EXISTED(400, "字典已经存在"),
    ERROR_CREATE_DICCT(500, "创建字典失败"),
    ERROR_WARPPER_FIELD(500, "包装字典属性失败"),
    ERROR_CODE_EMPTY(500, "字典类型不能为空"),

    /**
     * 文件上传
     */

    FILE_READING_ERROR(400, "文件读取错误"),
    FILE_NOT_FOUND(400, "文件无法找到"),
    UPLODA_ERROR(500, "上传图片出错"),

    /**
     * 权限和数据问题
     */
    DB_RESOURCCE_NULL(400, "数据库中没有该资源"),
    NO_PERMITION(405, "权限异常"),
    REQUEST_INVALIDDATE(400, "请求数据格式不对"),
    INVALID_KAPTCHA(400, "验证码不正确"),
    CANT_DELETE_ADMIN(600, "不能删除超级管理员"),
    CANT_FREEZE_ADMIN(600, "不能冻结超级管理员"),
    CANT_CHANGE_ADMIN(600, "不能修改超级管理员"),

    /**
     * 账户问题
     */

    NOT_LOGIN(401, "当前用户未登录"),
    USER_ALREADY_REG(401, "该用户已经注册"),
    NOT_THIS_USER(400, "没有此用户"),
    USER_NOT_EXTISTED(401, "没有此用户"),
    ACCOUNT_FREEZED(401, "账号被冻结"),
    OLD_PWD_NOT_RIGHT(402, "原密码不正确"),
    TWO_PWD_NOT_MATCH(405, "俩次输入的密码不一致"),

    /**
     * 错误的请求
     */

    MENU_PCODE_COINCIDENCEE(400, "菜单编号和父编号不能一致"),
    EXISTED_THE_MENU(400, "菜单编号重复，不能添加"),
    DICT_MUST_BE_NUMBER(400, "字典的值必须为数字"),
    REQUEST_NULL(400, "请求有错误"),
    SEESSION_TIMEOUT(400, "会话超时"),
    SERVER_ERROR(500, "服务器异常"),

    /**
     *
     */

    TOKEN_EXPIRED(700, "token过期"),
    TOKEN_EXPIREN(700, "token验证失败"),

    /**
     * 签名异常
     */

    SIGN_ERROR(700, "签名验证失败"),

    /**
     * 系统常量
     */
    ALREADY_CONSTANTS_ERRER(400, "已经存在该编码的系统参数"),
    SYSTEM_CONSTANT_ERROR(400, "不能删除系统常量"),

    /**
     * 其他
     */
    AUTH_REQUEST_ERROR(400, "账号密码错误"),

    /**
     * ueditor相关异常
     */

    UE_CONFIG_ERROR(800, "读取ueditor配置失败"),
    UE_FilE_NULL_ERROR(801, "上传文件为空"),
    UE_FILE_READ_ERROR(802, "读取文件错误"),
    UE_FILE_SAVE_ERROR(803, "保存UE的上传文件出错"),

    /**
     * 工作流相关
     */

    ACT_NO_FLOW(900, "无可用流程，请先导入或新建流程"),
    ACT_ADD_ERROR(901, "新建流程错误"),

    /**
     * 租户相关的异常
     */

    NO_TEnANT_ERROR(1901, "没有相关租户");;

    private Integer code;
    private String message;

    BizExceptionEnum(Integer code, String message) {
        this.code = code;
        this.message = message;
    }


    @Override
    public Integer getcode() {
        return null;
    }

    @Override
    public String getmessage() {
        return null;
    }
}
